/********************************************
*
*
*
*  test_util.c
*
*
********************************************/


#ifdef __cplusplus
 #if __cplusplus
  extern "C"{
 #endif
#endif /* __cplusplus */


#include "test_suite.h"
#include "d_util.h"


UINT32 TEST_DMS_32Multi32_00()
{
    UINT32 ulRet;
    UINT32 ulHigh;
    UINT32 ulLow;

    ulRet = DMS_32Multi32(0xFFFF,
                          0xFFFF,
                          &ulHigh,
                          &ulLow);

    printf("\r\n %u %u \r\n",ulHigh,ulLow);


    ulRet = DMS_32Multi32(0xFFFFFFFF,
                          0xFFFF,
                          &ulHigh,
                          &ulLow);

    printf("\r\n %u %u \r\n",ulHigh,ulLow);


        ulRet = DMS_32Multi32(0xFFFFF,
                          0xFFFF,
                          &ulHigh,
                          &ulLow);

    printf("\r\n %u %u \r\n",ulHigh,ulLow);


        ulRet = DMS_32Multi32(0xFFFF,
                          0xFFFFF,
                          &ulHigh,
                          &ulLow);

    printf("\r\n %u %u \r\n",ulHigh,ulLow);


        ulRet = DMS_32Multi32(0xFFFFFFFF,
                          0xFFFFFFFF,
                          &ulHigh,
                          &ulLow);

    printf("\r\n %u %u \r\n",ulHigh,ulLow);


    return DMS_OK;
}

UINT32 TEST_DMS_32Multi32_01()
{

    return DMS_OK;
}

UINT32 TEST_DMS_32Multi32_02()
{

    return DMS_OK;
}

UINT32 TEST_DMS_32Multi32_03()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Multi32_00()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Multi32_01()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Multi32_02()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Multi32_03()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Div32_00()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Div32_01()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Div32_02()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Div32_03()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Add64_00()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Add64_01()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Add64_02()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Add64_03()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Sub64_00()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Sub64_01()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Sub64_02()
{

    return DMS_OK;
}

UINT32 TEST_DMS_64Sub64_03()
{

    return DMS_OK;
}

VOID TEST_DMS_32Multi32()
{
    CU_ASSERT_EQUAL(TEST_DMS_32Multi32_00(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_32Multi32_01(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_32Multi32_02(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_32Multi32_03(),DMS_OK);
}


VOID TEST_DMS_64Multi32()
{
    CU_ASSERT_EQUAL(TEST_DMS_64Multi32_00(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Multi32_01(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Multi32_02(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Multi32_03(),DMS_OK);
}


VOID TEST_DMS_64Div32()
{
    CU_ASSERT_EQUAL(TEST_DMS_64Div32_00(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Div32_01(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Div32_02(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Div32_03(),DMS_OK);
}


VOID TEST_DMS_64Add64()
{
    CU_ASSERT_EQUAL(TEST_DMS_64Add64_00(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Add64_01(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Add64_02(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Add64_03(),DMS_OK);
}


VOID TEST_DMS_64Sub64()
{
    CU_ASSERT_EQUAL(TEST_DMS_64Sub64_00(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Sub64_01(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Sub64_02(),DMS_OK);
    CU_ASSERT_EQUAL(TEST_DMS_64Sub64_03(),DMS_OK);
}

VOID TEST_suite_util(VOID)
{
    CU_pSuite suite;
    suite = CU_add_suite(__FUNCTION__, NULL, NULL);
    CU_ADD_TEST(suite, TEST_DMS_32Multi32);
    CU_ADD_TEST(suite, TEST_DMS_64Multi32);
    CU_ADD_TEST(suite, TEST_DMS_64Div32);
    CU_ADD_TEST(suite, TEST_DMS_64Add64);
    CU_ADD_TEST(suite, TEST_DMS_64Sub64);
}

#ifdef __cplusplus
 #if __cplusplus
  }
 #endif
#endif /* __cplusplus */
